Describe "One is really one"{
	It "Compare 1 to 1"{
		$a=1
		$a | Should be 1
	}

	It "1 is really an int"{
		$i=1
		$i.GetType() | Should be "int"
	}
}

Describe "One is really one" {
    It "Compare 1 to 1" {
       $a = 1
       $a | Should be 1
    }
    It "1 is really an int" {
       $i = 1
       $i.GetType() | Should Be ([System.Int32])
    }
} 

Describe "Try catch test should like this"{
	it "Get-Item on a nonexisting file should have error PathNotFound" {
		try
		{
			get-item "ThisFileCannotPossiblyExist" -ErrorAction Stop
			throw "No Exception!"
		}
		catch
		{
			$_.FullyQualifiedErrorId | should be "PathNotFound,Microsoft.PowerShell.Commands.GetItemCommand"
		}
	}
}

Describe it {
    Write-Host -For DarkRed "Before Context"
    Context "subsection" {
        Write-Host -for DarkRed "Before BeforeAll"
        BeforeAll { write-host -for Blue "In Context BeforeAll" }
        Write-Host -for DarkRed "After BeforeAll"

        Write-Host -for DarkRed "Before AfterAll"
        AfterAll { Write-Host -for Blue "In Context AfterAll" }
        Write-Host -for DarkRed "After AfterAll"

        BeforeEach { Write-Host -for Blue "In BeforeEach" }
        AfterEach { Write-Host -for Blue "In AfterEach" }

        Write-Host -for DarkRed "Before It"
        It "should not be a surprise" {
            1 | should be 1
        }
        Write-Host -for DarkRed "After It"
    }
    Write-Host -for DarkRed "After Context"
    Write-Host -for DarkGreen "Before Describe BeforeAll" 
    BeforeAll { Write-Host -for DarkGreen "In Describe BeforeAll" }
    AfterAll { Write-Host -for DarkGreen "In Describe AfterAll" }
} 
